﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Capa_Dominio;

namespace Capa_Negocio.Gestionar_SalaEnsayo
{
    public interface IAdministracionSalaEnsayo
    {
        #region Operaciones de negocio
        SalaEnsayo InscribirSala(string nombreSala, int localCodigo,
            int capacidad, string caracteristicas, Boolean disponibilidad,string comentarios,Boolean estado);
        ServiciosAdicionales RegistrarServiciosAdicionales(int servicioCodigo,
            int salacodigo, string observacion, Boolean estado);
        #endregion

        #region Metodos para soporte para entidad Distrito
        Distrito CrearDistrito(Distrito entidadDistrito);
        ICollection<Distrito> listarDistritos();
        #endregion

        #region Métodos de soporte para entidad Local
        //Local CrearLocal(Local localACrear);
        Local CrearLocal(string nombreLocal, int codigoDistrito,string direccion,Boolean estado);

        Local ObtenerLocal(int codigo);
        Local ModificarLocal(Local localAModificar);
        void EliminarLocal(Local localAEliminar);
        ICollection<Local> ListarLocales();
        ICollection<Local> ListarLocalesXNombre(string nombre);
        #endregion

        #region Métodos de soporte para entidad Servicios
        Servicios CrearServicios(Servicios serviciosACrear);
        Servicios ObtenerServicios(int codigo);
        Servicios ModificarServicios(Servicios serviciosAModificar);
        void EliminarServicios(Servicios serviciosAEliminar);
        ICollection<Servicios> ListarServicios();
        ICollection<Servicios> ListarServiciosXNombre(string nombre);
        #endregion

        #region Métodos de soporte para entidad Sala
        SalaEnsayo ObtenerSala(int Codigo);
        SalaEnsayo ModificarSala(SalaEnsayo salaUpdate);
        ICollection<SalaEnsayo>ListarSalas(string nombre, int? localCodigo, int? capacidad, string caracteristicas);
        #endregion
    }
}
